package com.carbohydrate42.kotlin_compose_demo.compose

import androidx.compose.foundation.layout.Column
import androidx.compose.material3.Button
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.tooling.preview.Preview
import com.carbohydrate42.kotlin_compose_demo.util.DebugUtil

/**
 * android studio 记得得装 ndk 和 cmake
 * todo 引入已经打好包的 so 文件
 * todo 把自己的库打成一整个 so 文件
 */
object CppDemo {
    // 确保 cpp_demo.so (实际文件名是 libcpp_demo.so) 被加载
    init {
        System.loadLibrary("cpp_demo")
    }

    // cpp 的函数, kotlin 里面得用 external 修饰
    external fun hello(name: String): String
}

@Composable
@Preview(showBackground = true, showSystemUi = true)
fun AndroidWithCpp() {

    Column {
        Button(
            onClick = {
                DebugUtil.toast(CppDemo.hello("Kotlin"))
            }
        ) {
            Text(text = "run cpp")
        }
    }
}